1. Field of the Invention
The present invention relates to applications such as web-based applications (software systems) which are intended to be executed and manifested within a network client such as within a world wide web (WWW) browser environment.
2. Description of the Related Art
Network clients such as world wide web (WWW) enabled browsers are well known. In fact, browsers have become so widely used, that millions of people rely on the same to carry out their normal affairs. For example, consumers can now access the Internet to make travel arrangements, buy household items, and even trade securities such as stocks and bonds online. Also, users within organizations can access company web sites via internal networks commonly referred to as “intranets” to learn about company events, complete expense reports, exchange project information, etc. As a result, the browser has become almost a staple part of the way people use their computers to generate and receive information.
Although the browser network client, as a tool, has become very powerful and popular in terms of its inherent ability access server systems to receive content therefrom, the browser still remains limited in the functionality it can provide or allow. That is, browsers are designed to access remote server systems (computers) and receive content therefrom instead of providing stand-alone functionality. In other words, although capable of loading files and processing the same from local storage facilitates, they are targeted at accessing remote systems, receiving rich content, and providing a “current” web site experience. To date, browsers have not been utilized as general interfaces to facilitate general computing functionality that has traditionally been provided by stand-alone native applications and executable programs (e.g., form filling applications, etc.).
The aforementioned comments are not to be taken to indicate that developers have not created feature rich applications to operate within browser environments. To the contrary, many developers have created elaborate applications written as JAVA applications or “applets,” for example, and have distributed the same for execution within a browser network client. Typically, however, such applets are executed within a processing space (e.g., within a window) inside of a browser environment to deliver a particular feature set. Unfortunately, such applets are also intended to be distributed from a server system via a network connection and merely form part of a larger web site environment which usually includes content of various types including, but not limited to, hyper-text content (i.e., hyper-text markup language (HTML) content), images, sound files, JAVA, JAVA Script, etc.
Despite the inherent ability of a browser to access server systems and receive and manifest feature rich content (e.g., such as that provided via JAVA, etc.), browsers continue to remain under-utilized. Such under-utilization also is due, in large part, to the fact that there is no current, effective and efficient way to package content and distribute the same via network connection, physical passage (e.g., via computer-readable media such as compact discs, etc.). There is no current way for developers to package all content that may be related to a particular web-based application (e.g., one that would normally be served to a browser from a remote server system in the context of a web site, for example) and to distribute the same in an effective and efficient manner. For example, many people utilize open-standards based tools (e.g., HTML, etc.) to produce presentations, documentation sets, etc. which often include whole collections of files, images, etc. Save for successfully storing all such files in a commonly accessible directory, there is no way for a person to package all such files and make the same available or distribute such a package to client systems equipped with browsers. As such, there is no current way for a complete web-based application to be packaged for automatic processing within a browser environment and without the need for server (URL) distribution.
To address the aforementioned problems, developers have proposed several solutions which have not heretofore effectively allowed people to encapsulate complete web-based applications such as web sites. For example, many developers have developed file archiving formats to produce archive files containing all files related to a particular web application. Unfortunately, such currently available archiving schemes are not directed to the needs of a web-based application; that is, they are not directed to including the actual content necessary for a browser to render or layout web based data—e.g., HTML, etc. Moreover, such archiving schemes are not suited to produce auto-executable or auto-processable files within a browser environment—for example, there is no way to identify a starting file to cause a browser to instantly and automatically load and render a web-based application. And, despite their ability to encapsulate files, such currently available archiving schemes have no ability to provide a stand-alone file that may reside next to a native application and which may be treated within an operating environment as one in the same.
Thus, there exists a need to allow web based application (e.g., those normally associated with a WWW site, etc.) to be encapsulated within a standard file structure, distributed via any form of data distribution, and which may be automatically executed within a browser environment without having to cause to the browser environment to access a remote server system for files forming part of the web based application. Accordingly, there exists a need to provide new and improved systems and methods for encapsulating a web-based application into an open-standards based file format and structure which may be processed by a correspondingly equipped network client or web browser. To be viable, such a system and method of encapsulation must be easy to use.